Amazon Linux 2 の G5 インスタンスに NICE DCV でリモート接続してみた
2022年6月23日に G5 インスタンスが東京リージョンでも利用可能になりました。Marketplace で公開されている NICE DCV の AMI が G5 インスタンスで動作するのか確認する機会がありましたので紹介します。
G5 インスタンスが GA されたのは 2021年の11月のことでしたので約半年遅れの日本上陸ですね。
検証環境
項目 | バージョン |
---|---|
AMI ID | ami-0121e5d0d24ec6031 |
AMI Name | DCV-AmazonLinux2-x86_64-2022.0.12760-NVIDIA-510.47.03-2022-05-23T15-57-07.954Z |
Instance Type | g5.xlarge |
OS | Amazon Linux 2 |
NICE DCV | 2022.0 (r12760) |
NICE DCV Client | 2022.0 (r4131) |
NICE DCV AMI で起動してみる
IAM ロールの作成
NICE DCV の初期設定でシェルアクセスが必要になるため、セッションマネージャーの許可と、NICE DCV のライセンスチェック用の許可ポリシーを付与した IAM ロールを作成します。
以下のIAMポリシーを作成します。利用するリージョンに応じてap-northeast-1の箇所を修正してください。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::dcv-license.ap-northeast-1/*" } ] }
EC2インスタンスはNICE DCVのライセンス確認のため定期的にS3バケットへアクセスします。そのため、特定のS3バケットへアクセス権限のあるIAMロールを設定する必要があります。
NICE DCV AMI から起動
新規のインスタンスタイプは全リージョンで起動できるとは限らないため、起動対象のアカウントではどの AZ で起動できるか先に確認しましょう。最近はスポットインスタンスの料金設定履歴から表示されるリージョンをチェックするのが早いのではないかと思っています。私のアカウントでは ap-northeast-1d
では起動できないようですね。
NICE DCV for Amazon Linux 2 の AMI を利用してインスタンスを起動します。
セキュリティグループ
接続元のグローバル IP から TCP/UDP の 8443 ポートを許可しています。
$ aws ec2 describe-security-groups --group-ids sg-0e5ee023e794b8fa9 --query "SecurityGroups[*].IpPermissions[*]" --output table -------------------------------------- | DescribeSecurityGroups | +----------+--------------+----------+ | FromPort | IpProtocol | ToPort | +----------+--------------+----------+ | 8443 | udp | 8443 | +----------+--------------+----------+ || IpRanges || |+----------------------------------+| || CidrIp || |+----------------------------------+| || 203.0.113.1/32 || |+----------------------------------+| +----------+--------------+----------+ | FromPort | IpProtocol | ToPort | +----------+--------------+----------+ | 8443 | tcp | 8443 | +----------+--------------+----------+ || IpRanges || |+----------------------------------+| || CidrIp || |+----------------------------------+| || 203.0.113.1/32 || |+----------------------------------+|
NICE DCV の初期設定
セッションマネージャーでインスタンスにアクセスしました。
NICE DCV のバージョンを確認してきます。
$ dcv version NICE DCV 2022.0 (r12760) Copyright (C) 2010-2022 NICE s.r.l. All rights reserved. This product is protected by copyright and licenses restricting use, copying, distribution, and decompilation.
NICE DCV でリモート接続する際のパスワードが未設定状態のため、デフォルトの ec2-user
にパスワードを設定しました。
$ sudo su - ec2-user $ sudo passwd ec2-user Changing password for user ec2-user. New password: Retype new password:
Linux の NICE DCV のセッションにはコンソールセッションと仮想セッションの2タイプあります。
Managing NICE DCV sessions - NICE DCV
コンソールセッションだと以下のコマンドを実行するとセッションが利用可能になるのですが、毎回手動で実行するのはめんどくさいです。
$ dcv create-session dcvdemo
EC2 起動時に自動でコンソールセッションを作成するには以下の設定を追加します。
sudo sed -i -e "s/^#create-session/create-session/g" /etc/dcv/dcv.conf sudo sed -i -e "s/^#owner = \"\"/owner = \"ec2-user\"/g" /etc/dcv/dcv.conf sudo systemctl restart dcvserver
コメントアウトが外れて、実行ユーザー名が入力されているか確認します。
$ cat /etc/dcv/dcv.conf | egrep ^create-session create-session = true $ cat /etc/dcv/dcv.conf | egrep ^owner owner = "ec2-user"
EC2 上の設定は以上です。
NICE DCV Client から接続
DCV Client バージョンを確認します。
OS: Darwin (20.6.0 Darwin Kernel Version 20.6.0: Wed Jan 12 22:22:42 PST 2022; root:xnu-7195.141.19~2/RELEASE_X86_64) Architecture: x86_64 Version: 2022.0 (r4131)
EC2 のパブリック IP を入力します。
ec2-user
と先ほど設定したパスワードを入力します。
Amazon Linux 2 へ GUI で接続できました。
コンソールセッションがない状態ですとユーザー名・パスワード入力後、下記のエラーが表示され接続できません。コンソールセッションの設定を見直すか、切り分けのため手動でセッションを作成(dcv create-session dcvdemo
)してみてください。
おわりに
AMI のレビュー欄に yum upate
ができないと書いてあったこと、G5 インスタンスでも動作するか確認したかったため試してみました。yum update
は実行可能でした。2年前のレビューなのでどこかでバージョンあがったタイミングで解消された様です。